

#ifndef __LOCALIZATION
#define __LOCALIZATION

#include <stdint.h>

struct SquareInfo
{
   double _lowAngle;  //degrees
   double _highAngle; //degrees
   double _lowRange;  //meters
   double _highRange; //meters
};


class Localization
{
public:

//constructor
Localization
( 
uint32_t grid_size_x,
uint32_t grid_size_y, 
double square_size_x, 
double square_size_y, 
double size_dead_zone, 
double size_path_width,
double angle_offset
);

//destructor
~Localization();

//Calling this function will update the vital information 
//for all possible IED locations
void Update
(
   double XPos,
   double YPos,
   double ZPos,
   double Heading
);

//Calling this function will return information about the designated
//square coordinates
SquareInfo GetSquareInfo
(
uint32_t grid_pos_x,
uint32_t grid_pos_y
);


private:

SquareInfo _IEDSquares[100][100];

uint32_t _grid_size_x;
uint32_t _grid_size_y;
double _square_size_x;
double _square_size_y;
double _size_dead_zone;
double _size_path_width;
double _angle_offset;

};

#endif
